/*
 * Codo.h
 *
 *  Created on: 29/08/2010
 *      Author: julian
 */

#ifndef CODO_H_
#define CODO_H_

#include <GL/glut.h>
#include "pala.h"

class Codo : protected DisplayList {
private:
	Pala* laPala;
	float* angulo;

public:
	Codo(Pala* nuevaPala, float* rotacion){
		this->laPala=nuevaPala;
		this->angulo=rotacion;
		inicializar();
	}

	virtual void ejecucion() const{

		//Dibujo el codo
		glPushMatrix();
		glColor3ub(255,198,000);
		glTranslatef(2.25,0.0,0.0);
		glScalef(4.5,0.4,0.4);
		glutSolidCube(1.0);
		glPopMatrix();

		
	}

	virtual void dibujar() const{
		glRotatef(*angulo,0.0,1.0,0.0);
		DisplayList::dibujar();
		//Cambio de sistema de referencia para dibujar pala
		glPushMatrix();
		glTranslatef(4.5,0.0,-1);		
		glRotatef(90,0,0,1);
		glRotatef(-90,1,0,0);
		laPala->dibujar();
		glPopMatrix();
	}

	virtual ~Codo(){}
};

#endif /* CODO_H_ */
